package com.shijunhao.graduation.service.business;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.shijunhao.graduation.domain.entity.BusinessUserInfo;
import com.shijunhao.graduation.domain.entity.OrgUser;
import com.shijunhao.graduation.domain.vo.CurrentUserVo;
import com.shijunhao.graduation.domain.vo.UserCulVo;
import com.shijunhao.graduation.service.system.BaseService;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author shijunhao
 * @since 2022-04-08
 */
public interface IBusinessUserInfoService extends BaseService<BusinessUserInfo> {
    /**
     * @param dto: 实体
     * @return: boolean
     * @author: shijunhao
     * @date: 2022/4/29 1:59
     * @description: 更新用户信息
     */
    boolean update(BusinessUserInfo dto);


    /**
     * @param entity: 实体信息
     * @return: com.shijunhao.graduation.domain.vo.CurrentUserVo
     * @author: shijunhao
     * @date: 2022/4/29 2:00
     * @description: 将当前实体转化为userVo
     */
    CurrentUserVo toVo(BusinessUserInfo entity);

    /**
     * @return: 获取当前用户的数据信息
     * @author: shijunhao
     * @date: 2022/3/4 17:07
     * @description:
     */
    CurrentUserVo getCurrentOrgUser();

    /**
     * @return: com.shijunhao.graduation.domain.entity.OrgUser
     * @author: shijunhao
     * @date: 2022/4/24 22:32
     * @description: 获取当前用户账户信息
     */
    OrgUser getCurrentUser();


    /**
     * @param id: 用户id
     * @return: boolean
     * @author: shijunhao
     * @date: 2022/4/29 5:16
     * @description: 删除用户信息
     */
    boolean delete(Long id);
}
